package hibernate.model;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.hibernate.annotations.NamedQueries;
import org.hibernate.annotations.NamedQuery;

@SuppressWarnings("serial")
@Entity
@Table(name = "aygitihbar", catalog = "emmy")
@NamedQueries({ // şimdilik bu query'lere gerek yok ihtiyaç olursa diye hazırlandı...
@NamedQuery(name = "findAygitihbKlc", query = "from Aygitihbar where kullaniciid = :aKlc"),
@NamedQuery(name = "findAygitihbSrn", query = "from Aygitihbar where aygitSeriNo = :aSrn"),
@NamedQuery(name = "findAygitihbTarih", query = "from Aygitihbar where ihbarTarihi = :aihbrTrh"),
@NamedQuery(name = "findAygitihbTuru", query = "from Aygitihbar where ihbarTuru like :aihbrTuru"),
@NamedQuery(name = "findAygitihbKcTrh", query = "from Aygitihbar where kayipCalintiTarihi = :aKcTrh"),
@NamedQuery(name = "findAygitihbAckla", query = "from Aygitihbar where aciklamalar like :aAckla")
})
public class Aygitihbar implements java.io.Serializable {

	private Long ihbarid;
	private Musteriaygitlari musteriaygitlari;
	private Musteri musteri;
	private String ihbarTarihi;
	private String ihbarTuru;
	private String kayipCalintiTarihi;
	private String aciklamalar;

	public Aygitihbar() {
	}

	public Aygitihbar(Musteriaygitlari musteriaygitlari, Musteri musteri,
			String ihbarTarihi, String ihbarTuru, String kayipCalintiTarihi,
			String aciklamalar) {
		this.musteriaygitlari = musteriaygitlari;
		this.musteri = musteri;
		this.ihbarTarihi = ihbarTarihi;
		this.ihbarTuru = ihbarTuru;
		this.kayipCalintiTarihi = kayipCalintiTarihi;
		this.aciklamalar = aciklamalar;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "ihbarid", unique = true, nullable = false)
	public Long getIhbarid() {
		return this.ihbarid;
	}

	public void setIhbarid(Long ihbarid) {
		this.ihbarid = ihbarid;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "aygitSeriNo", nullable = false)
	public Musteriaygitlari getMusteriaygitlari() {
		return this.musteriaygitlari;
	}

	public void setMusteriaygitlari(Musteriaygitlari musteriaygitlari) {
		this.musteriaygitlari = musteriaygitlari;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "kullaniciid", nullable = false)
	public Musteri getMusteri() {
		return this.musteri;
	}

	public void setMusteri(Musteri musteri) {
		this.musteri = musteri;
	}

	@Column(name = "ihbarTarihi", nullable = false, length = 10)
	public String getIhbarTarihi() {
		return this.ihbarTarihi;
	}

	public void setIhbarTarihi(String ihbarTarihi) {
		this.ihbarTarihi = ihbarTarihi;
	}

	@Column(name = "ihbarTuru", nullable = false, length = 10)
	public String getIhbarTuru() {
		return this.ihbarTuru;
	}

	public void setIhbarTuru(String ihbarTuru) {
		this.ihbarTuru = ihbarTuru;
	}

	@Column(name = "kayipCalintiTarihi", nullable = false, length = 10)
	public String getKayipCalintiTarihi() {
		return this.kayipCalintiTarihi;
	}

	public void setKayipCalintiTarihi(String kayipCalintiTarihi) {
		this.kayipCalintiTarihi = kayipCalintiTarihi;
	}

	@Column(name = "aciklamalar", nullable = false, length = 250)
	public String getAciklamalar() {
		return this.aciklamalar;
	}

	public void setAciklamalar(String aciklamalar) {
		this.aciklamalar = aciklamalar;
	}
}